home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung 2 / Power-Programmierung CD 2 (Tewi)(1994).iso / gnu / djgpp / src / gas-211 / gas / readme.cof < prev    next >
Encoding:
Text File  |  1993-05-30  |  3.1 KB  |  80 lines

  1. The coff patches intend to do the following :
  2.  
  3.    . Generate coff files very compatible with vanilla linker.
  4.    . Understands coff debug directives.
  5.  
  6. Here are the guidelines of the work I have done :
  7.  
  8.    . Encapsulate format dependent code in macros where it is possible.
  9.    . Where not possible differenciate with #ifdef
  10.    . try not to change the calling conventions of the existing functions. 
  11.     I made one exception : symbol_new. I would be pleased to hear about
  12.     a better solution. (symbols.c)
  13.    . Extend the use of N_TYPE_seg seg_N_TYPE tables so that segments can
  14.     be manipulated without using their format dependent name. (subsegs.c)
  15.    . Write a function to parse the .def debug directives
  16.    . Write two small peaces of code to handle the .ln directive.
  17.    . In write.c try to move all the cross compilation specifics (md_..) to
  18.      format dependent files.
  19.    . Encapsulate the data structures using generic types, macros calls.
  20.    . Added too much code to resolve the complexity of the symbol table
  21.      generated. Most of the code deals with debug stuff.
  22.    . Create another makefile, shorter, cleaner.
  23.    . Create a config.gas shell script to mimic the gcc,gdb... configuration
  24.     mechanism. This reduce the complexity of the makefile.
  25.    . Isolate the format dependent code in two files 
  26.     coff.c coff.h
  27.     aout.c aout.h
  28.     elf.c elf.h    [ Not yet ;-]
  29.    . added a little stack management routine for coff in file stack.c
  30.    . isolate os specific flags in m- files
  31.  
  32. If further development is planed on it is should solve the following problems :
  33.  
  34.    . Encapsulate DESC & OTHER tests in a macro call. I'm not aware
  35.     of their exact semantics.
  36.    . Clean up the seg_N_TYPE N_TYPE_seg naming scheme
  37.    . Try to remove as much reference to segment dependent names as possible
  38.    . Find a cleaner solution for symbol_new.
  39.    . Report the modifications on vax, ns32k, sparc machine dependent files.
  40.     To acheive this goal, search for \<N_, sy_, symbol_new and symbolS.
  41.    . Allow an arbitrary number of segments (spare sections .ctor .dtor .bletch)
  42.    . Find a way to extend the debug information without breaking sdb
  43.      compatibility. Mainly intended for G++.
  44.    . should it do something to generate shared libraries objects ?
  45.  
  46. I have tested this code on the following processor/os. gcc-1.37.1 was
  47.    used for all the tests.
  48.  
  49. 386    SCO unix ODT
  50.     gcc-1.37.1, gas, emacs-18.55
  51.  
  52. 386    Esix rev C
  53.     gas-1.37/write.s
  54.  
  55. 386    Ix 2.02
  56.     gas, all the X11R4 mit clients
  57.  
  58. 386    CTIX 3.2
  59.     xsol (X11R4 solitary game), gas
  60.  
  61. 68030    unisoft 1.3    
  62.     the kernel (V.3.2) + tcp/ip extensions
  63.     bash-1.05, bison-1.11, compress-4.0, cproto, shar-3.49, diff-1.14,
  64.     dist-18.55, flex-2.3, gas-1.37, gcc-1.37.1, gdb-3.6, grep-1.5,
  65.     kermit, make-3.58, makedep, patch, printf, makeinfo, g++-1.37.1,
  66.     tar-1.08, texi2roff, uuencode, uutraf-1.2, libg++-1.37.2, groff-0.5
  67.  
  68. 68020    sunos 3.5 (no, not coff, just to be sure that I didn't
  69.             introduce errors)
  70.     gcc-1.37.1, gas, emacs-18.55, gdb-3.6, bison-1.11, diff-1.14, 
  71.     make-3.58, tar-1.08
  72.  
  73. 68030   sunos 4.0.3 (idem)
  74.     gas
  75.  
  76. I would be glad to hear about new experiences
  77.  
  78.     Loic  (loic@adesign.uucp or loic@afp.uucp)
  79.  
  80.